package com.irdstudio.efp.esb.api.bean.basicfn.req;

import com.alibaba.fastjson.annotation.JSONField;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * 需求编号：【】（业务提的需求编号）
 * 问题编号：【】（若不是因为修复问题而新增该类，则留空）
 * 开发人员：【】
 * 创建日期：【2019-11-2019/11/19 9:14】
 * 功能描述：风险决策结果回调接口请求实体类
 */
public class RecRscWarnLoanReqBean implements Serializable {
    // 客户号
    @NotNull
    @NotEmpty
    @Length(max = 32)
    private String  CustNo;
    @JSONField(name = "CustNo")
    public String  getCustNo() { return CustNo; }
    @JSONField(name = "CustNo")
    public void setCustNo( String CustNo) { this.CustNo = CustNo; }
    // 客户名称
    @NotNull
    @NotEmpty
    @Length(max = 300)
    private String  CustNm;
    @JSONField(name = "CustNm")
    public String  getCustNm() { return CustNm; }
    @JSONField(name = "CustNm")
    public void setCustNm( String CustNm) { this.CustNm = CustNm; }
    // 证件类型
    @NotNull
    @NotEmpty
    @Length(max = 5)
    private String  IdentTp;
    @JSONField(name = "IdentTp")
    public String  getIdentTp() { return IdentTp; }
    @JSONField(name = "IdentTp")
    public void setIdentTp( String IdentTp) { this.IdentTp = IdentTp; }
    // 证件号码
    @NotNull
    @NotEmpty
    @Length(max = 32)
    private String  IdentNo;
    @JSONField(name = "IdentNo")
    public String  getIdentNo() { return IdentNo; }
    @JSONField(name = "IdentNo")
    public void setIdentNo( String IdentNo) { this.IdentNo = IdentNo; }
    // 合同编号
    @NotNull
    @NotEmpty
    @Length(max = 30)
    private String  ContrNo;
    @JSONField(name = "ContrNo")
    public String  getContrNo() { return ContrNo; }
    @JSONField(name = "ContrNo")
    public void setContrNo( String ContrNo) { this.ContrNo = ContrNo; }
    // 借据号
    @NotNull
    @NotEmpty
    @Length(max = 64)
    private String  DblNo;
    @JSONField(name = "DblNo")
    public String  getDblNo() { return DblNo; }
    @JSONField(name = "DblNo")
    public void setDblNo( String DblNo) { this.DblNo = DblNo; }
    // 贷款余额
    @NotNull
    @NotEmpty
    @DecimalMax(value = "9999999999999999999999")
    private Double  LoanBal;
    @JSONField(name = "LoanBal")
    public Double  getLoanBal() { return LoanBal; }
    @JSONField(name = "LoanBal")
    public void setLoanBal( Double LoanBal) { this.LoanBal = LoanBal; }
    // 贷款起期
    @NotNull
    @NotEmpty
    @Length(max = 10)
    private String  LoanStrtDt;
    @JSONField(name = "LoanStrtDt")
    public String  getLoanStrtDt() { return LoanStrtDt; }
    @JSONField(name = "LoanStrtDt")
    public void setLoanStrtDt( String LoanStrtDt) { this.LoanStrtDt = LoanStrtDt; }
    // 贷款止期
    @NotNull
    @NotEmpty
    @Length(max = 10)
    private String  LoanEndDt;
    @JSONField(name = "LoanEndDt")
    public String  getLoanEndDt() { return LoanEndDt; }
    @JSONField(name = "LoanEndDt")
    public void setLoanEndDt( String LoanEndDt) { this.LoanEndDt = LoanEndDt; }
    // 规则集编号
    @NotNull
    @NotEmpty
    @Length(max = 32)
    private String  RuleGrpId;
    @JSONField(name = "RuleGrpId")
    public String  getRuleGrpId() { return RuleGrpId; }
    @JSONField(name = "RuleGrpId")
    public void setRuleGrpId( String RuleGrpId) { this.RuleGrpId = RuleGrpId; }
    // 规则集名称
    @NotNull
    @NotEmpty
    @Length(max = 300)
    private String  RuleGrpNm;
    @JSONField(name = "RuleGrpNm")
    public String  getRuleGrpNm() { return RuleGrpNm; }
    @JSONField(name = "RuleGrpNm")
    public void setRuleGrpNm( String RuleGrpNm) { this.RuleGrpNm = RuleGrpNm; }
    // 规则编号
    @NotNull
    @NotEmpty
    @Length(max = 32)
    private String RuleId;
    @JSONField(name = "RuleId")
    public String getRuleId() { return RuleId; }
    @JSONField(name = "RuleId")
    public void setRuleId( String RuleId) { this.RuleId = RuleId; }
    // 规则名称
    @NotNull
    @NotEmpty
    @Length(max = 300)
    private String  RuleNm;
    @JSONField(name = "RuleNm")
    public String  getRuleNm() { return RuleNm; }
    @JSONField(name = "RuleNm")
    public void setRuleNm( String RuleNm) { this.RuleNm = RuleNm; }
    // 描述
    @NotNull
    @NotEmpty
    @Length(max = 256)
    private String  Desc;
    @JSONField(name = "Desc")
    public String  getDesc() { return Desc; }
    @JSONField(name = "Desc")
    public void setDesc( String Desc) { this.Desc = Desc; }
    // 风险等级
    @NotNull
    @NotEmpty
    @Length(max = 7)
    private String  RskLvl;
    @JSONField(name = "RskLvl")
    public String  getRskLvl() { return RskLvl; }
    @JSONField(name = "RskLvl")
    public void setRskLvl( String RskLvl) { this.RskLvl = RskLvl; }
    // 当前风险预警来源
    @NotNull
    @NotEmpty
    @Length(max = 10)
    private String  CrnRskElyWrnSrc;
    @JSONField(name = "CrnRskElyWrnSrc")
    public String  getCrnRskElyWrnSrc() { return CrnRskElyWrnSrc; }
    @JSONField(name = "CrnRskElyWrnSrc")
    public void setCrnRskElyWrnSrc( String CrnRskElyWrnSrc) { this.CrnRskElyWrnSrc = CrnRskElyWrnSrc; }
    // 当前风险预警规则来源
    @Length(max = 50)
    private String  CrnRskElyWrnRuleSrc;
    @JSONField(name = "CrnRskElyWrnRuleSrc")
    public String  getCrnRskElyWrnRuleSrc() { return CrnRskElyWrnRuleSrc; }
    @JSONField(name = "CrnRskElyWrnRuleSrc")
    public void setCrnRskElyWrnRuleSrc( String CrnRskElyWrnRuleSrc) { this.CrnRskElyWrnRuleSrc = CrnRskElyWrnRuleSrc; }
    // 当前风险预警产生日期
    @NotNull
    @NotEmpty
    @Length(max = 10)
    private String CrnRskElyWrnGenrtDt;
    @JSONField(name = "CrnRskElyWrnGenrtDt")
    public String  getCrnRskElyWrnGenrtDt() { return CrnRskElyWrnGenrtDt; }
    @JSONField(name = "CrnRskElyWrnGenrtDt")
    public void setCrnRskElyWrnGenrtDt( String CrnRskElyWrnGenrtDt) { this.CrnRskElyWrnGenrtDt = CrnRskElyWrnGenrtDt; }
    // 请求ID
    @NotNull
    @NotEmpty
    @Length(max = 32)
    private String RqsIdmptntID;
    @JSONField(name = "RqsIdmptntID")
    public String getRqsIdmptntID() {
        return RqsIdmptntID;
    }
    @JSONField(name = "RqsIdmptntID")
    public void setRqsIdmptntID(String rqsIdmptntID) {
        RqsIdmptntID = rqsIdmptntID;
    }
}
